/**
 * UFCG - CEEI - DSC- SI1
 * Projeto da Disciplina Sistema de Informacao 1 - 2011.1
 * 
 * Professor: Hyggo Almeida
 * 
 * Alunos: Felipe de Sousa - felipeso@lcc.ufcg.edu.br
 * 		   Matheus Sampaio - matheusss@lcc.ufcg.edu.br
 *         Henrique Florencio - henriquecf@lcc.ufcg.edu.br
 *         Claudio Cardoso - claudiocaj@lcc.ufcg.edu.br
 * 		   Julio Henrrique - juliohr@lcc.ufcg.edu.br
 * 
 */
package controller;

import model.Evento;
import exception.ExceptionAtributoInexistenteEvento;
import exception.ExceptionAtributoInvalido;
import exception.ExceptionDataInvalida;
import exception.ExceptionDataInvalidaFinalDeSemana;
import exception.ExceptionEventoIdJaExiste;
import exception.ExceptionIdentificacaoInvalida;
import exception.ExceptionSalaEventoInexistente;

public class EventosFacede {

	private GerenciadorDeEventos genEventos = GerenciadorDeEventos
			.getInstance();

	public Evento containEvent(String id) {
		return genEventos.containEvent(id);
	}

	public boolean containEventBoolean(String id) {
		return genEventos.containEventBoolean(id);
	}

	public void adicionarEvento(String id, String nome, String inicio,
			String fim, String area, String contato)
			throws ExceptionDataInvalida, ExceptionDataInvalidaFinalDeSemana,
			ExceptionIdentificacaoInvalida, ExceptionEventoIdJaExiste,
			ExceptionAtributoInvalido {

		genEventos.adicionarEvento(id, nome, inicio, fim, area, contato);
	}

	public void adicionarEvento(String id, String nome, String inicio,
			String fim, String area, String contato, int repeticoes)
			throws ExceptionDataInvalida, ExceptionDataInvalidaFinalDeSemana,
			ExceptionIdentificacaoInvalida, ExceptionEventoIdJaExiste,
			ExceptionAtributoInvalido {

		genEventos.adicionarEvento(id, nome, inicio, fim, area, contato,
				repeticoes);
	}

	public String getAtributoEvento(String id, String atributo)
			throws ExceptionSalaEventoInexistente,
			ExceptionAtributoInexistenteEvento {
		return genEventos.getAtributoEvento(id, atributo);
	}

	public void zerarSistema() {
		genEventos.zerarSistema();
	}

	public void encerrarSistema() {
		genEventos.encerrarSistema();
	}

}
